package com.dattplace.service;

import java.util.List;

import com.dattplace.model.ResultData;
import com.dattplace.model.ShareTimes;
import com.dattplace.vo.FeedBackVo;
import com.dattplace.vo.PlatformShareVo;
import com.dattplace.vo.ShareCommentVo;
import com.dattplace.vo.ShareTimesVo;

public interface IShareService {

	ResultData<Object> saveShare(ShareTimesVo showTimesVo);

	ResultData<Object> deleteShare(String shareId);

	ResultData<Object> praise(String userId, String shareId);

	ResultData<Object> querShareById(String shareId);

	ResultData<Object> shareList(int pageNo, int pageSize, String keyWord, int shareType, int queryType);

	ResultData<Object> comment(ShareCommentVo shareCommentVo);

	long queryShareCount(String userId);

	ResultData<Object> getConfig();

	List<ShareTimesVo> queryShareList(int pageNo, int pageSize, String content,int shareType,String nickName,String shareStartDate,String shareEndDate);

	long queryAllUserCount(String content, int shareType, String nickName, String shareStartDate, String shareEndDate);

	ResultData<Object> shield(String shareId, int optType);

	ResultData<Object> deleteComment(ShareCommentVo shareCommentVo);

	ResultData<Object> userShareList(int pageNo, int pageSize, String userId, int queryType);

	ResultData<Object> feedback(FeedBackVo feedBackVo);

	ResultData<Object> platformShare(PlatformShareVo platformShare);

	ResultData<Object> autoUpdate();

	ResultData<Object> increaseReadCount(String shareId);

	ResultData<Object> edit(ShareTimesVo showTimesVo);

	ResultData<Object> increasePraiseCount(String shareId);

	List<ShareTimes> shareList();

	void increasePraiseCount(String shareId, int count);

	void increaseReadCount(String shareId, int count);

}
